home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / Developer Essentials Jul 90 / DTS Sample Code / Macintosh Sample Code / Monthly Releases (Compressed) / MacDTS.Sample.Code.90.05.sit / SC.023.FracApp 2.0 / URectStack.inc1.p < prev    next >
MacBinary  |  1990-05-01  |  4.4 KB  |  [TEXT/MPS ]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
66% dexvert ZX81 Sinclair BASIC (image/sinclairBASIC) ext Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Tue May 1 12:00:00 1990, modified Tue May 1 12:00:00 1990, creator 'MPS ', type ASCII, 3695 bytes "URectStack.inc1.p" , at 0xeef 634 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[MPS ]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 11 55 52 65 63 74 53 | 74 61 63 6b 2e 69 6e 63 |..URectS|tack.inc|
|00000010| 31 2e 70 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |1.p.....|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 53 | 20 01 00 00 00 00 00 00 |.TEXTMPS| .......|
|00000050| 00 00 00 00 00 0e 6f 00 | 00 02 7a a2 63 63 00 a2 |......o.|..z.cc..|
|00000060| 63 63 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |cc......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 0f 25 00 00 |........|.....%..|
|00000080| 7b 5b 6a 3d 32 30 2f 35 | 33 2f 31 24 5d 20 50 61 |{[j=20/5|3/1$] Pa|
|00000090| 73 6d 61 74 20 4f 70 74 | 69 6f 6e 73 7d 0d 0d 7b |smat Opt|ions}..{|
|000000a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 7d 0d 7b 2d 2d |--------|---}.{--|
|00000100| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000110| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000120| 54 52 65 63 74 53 74 61 | 63 6b 20 4d 65 74 68 6f |TRectSta|ck Metho|
|00000130| 64 73 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |ds------|--------|
|00000140| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000150| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 7d 0d 7b 2d 2d 2d 2d |--------|-}.{----|
|00000160| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000170| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000180| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000190| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000001a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000001b0| 2d 2d 2d 2d 2d 2d 2d 7d | 0d 7b 24 53 20 41 4f 70 |-------}|.{$S AOp|
|000001c0| 65 6e 7d 0d 0d 50 52 4f | 43 45 44 55 52 45 20 54 |en}..PRO|CEDURE T|
|000001d0| 52 65 63 74 53 74 61 63 | 6b 2e 49 52 65 63 74 53 |RectStac|k.IRectS|
|000001e0| 74 61 63 6b 28 69 6e 69 | 74 69 61 6c 4e 75 6d 62 |tack(ini|tialNumb|
|000001f0| 65 72 4f 66 52 65 63 74 | 73 3a 20 49 6e 74 65 67 |erOfRect|s: Integ|
|00000200| 65 72 29 3b 0d 0d 7b 20 | 43 61 6c 6c 73 20 49 44 |er);..{ |Calls ID|
|00000210| 79 6e 61 6d 69 63 41 72 | 72 61 79 20 77 69 74 68 |ynamicAr|ray with|
|00000220| 20 d2 69 6e 69 74 69 61 | 6c 4e 75 6d 62 65 72 4f | .initia|lNumberO|
|00000230| 66 52 65 63 74 73 d3 20 | 61 6e 64 20 61 6e 20 65 |fRects. |and an e|
|00000240| 6c 65 6d 65 6e 74 20 73 | 69 7a 65 20 6f 66 20 53 |lement s|ize of S|
|00000250| 69 7a 65 4f 66 28 52 65 | 63 74 29 2e 20 54 68 69 |izeOf(Re|ct). Thi|
|00000260| 73 0d 20 20 77 69 6c 6c | 20 61 6c 6c 6f 63 61 74 |s. will| allocat|
|00000270| 65 20 65 6e 6f 75 67 68 | 20 6d 65 6d 6f 72 79 20 |e enough| memory |
|00000280| 69 6e 20 74 68 65 20 68 | 65 61 70 20 74 6f 20 73 |in the h|eap to s|
|00000290| 74 6f 72 65 20 61 74 20 | 6c 65 61 73 74 20 61 6e |tore at |least an|
|000002a0| 20 d2 69 6e 69 74 69 61 | 6c 4e 75 6d 62 65 72 4f | .initia|lNumberO|
|000002b0| 66 52 65 63 74 73 d3 20 | 6f 66 0d 20 20 52 65 63 |fRects. |of. Rec|
|000002c0| 74 73 20 77 69 74 68 6f | 75 74 20 74 61 6b 69 6e |ts witho|ut takin|
|000002d0| 67 20 61 6e 79 20 4d 65 | 6d 6f 72 79 20 4d 61 6e |g any Me|mory Man|
|000002e0| 61 67 65 72 20 68 69 74 | 2e 7d 0d 0d 09 42 45 47 |ager hit|.}...BEG|
|000002f0| 49 4e 0d 09 09 53 45 4c | 46 2e 49 44 79 6e 61 6d |IN...SEL|F.IDynam|
|00000300| 69 63 41 72 72 61 79 28 | 69 6e 69 74 69 61 6c 4e |icArray(|initialN|
|00000310| 75 6d 62 65 72 4f 66 52 | 65 63 74 73 2c 20 53 69 |umberOfR|ects, Si|
|00000320| 7a 65 4f 66 28 52 65 63 | 74 29 29 3b 0d 09 45 4e |zeOf(Rec|t));..EN|
|00000330| 44 3b 0d 0d 7b 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |D;..{---|--------|
|00000340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000350| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000360| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000370| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000380| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000390| 7d 0d 7b 24 53 20 41 52 | 65 73 7d 0d 0d 50 52 4f |}.{$S AR|es}..PRO|
|000003a0| 43 45 44 55 52 45 20 54 | 52 65 63 74 53 74 61 63 |CEDURE T|RectStac|
|000003b0| 6b 2e 43 6c 65 61 72 53 | 74 61 63 6b 3b 0d 0d 7b |k.ClearS|tack;..{|
|000003c0| 20 52 65 6d 6f 76 65 73 | 20 61 6c 6c 20 74 68 65 | Removes| all the|
|000003d0| 20 69 74 65 6d 73 20 66 | 72 6f 6d 20 74 68 65 20 | items f|rom the |
|000003e0| 73 74 61 63 6b 2e 20 7d | 0d 0d 09 42 45 47 49 4e |stack. }|...BEGIN|
|000003f0| 0d 09 09 53 45 4c 46 2e | 44 65 6c 65 74 65 45 6c |...SELF.|DeleteEl|
|00000400| 65 6d 65 6e 74 73 41 74 | 28 31 2c 20 47 65 74 53 |ementsAt|(1, GetS|
|00000410| 69 7a 65 29 3b 0d 09 45 | 4e 44 3b 0d 0d 7b 2d 2d |ize);..E|ND;..{--|
|00000420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000460| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000470| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 7d 0d 7b 24 53 20 41 |--------|-}.{$S A|
|00000480| 52 65 73 7d 0d 0d 50 52 | 4f 43 45 44 55 52 45 20 |Res}..PR|OCEDURE |
|00000490| 54 52 65 63 74 53 74 61 | 63 6b 2e 45 61 63 68 52 |TRectSta|ck.EachR|
|000004a0| 65 63 74 28 50 52 4f 43 | 45 44 55 52 45 20 44 6f |ect(PROC|EDURE Do|
|000004b0| 54 6f 52 65 63 74 28 74 | 68 65 52 65 63 74 3a 20 |ToRect(t|heRect: |
|000004c0| 52 65 63 74 29 3b 20 64 | 69 72 65 63 74 69 6f 6e |Rect); d|irection|
|000004d0| 3a 20 42 6f 6f 6c 65 61 | 6e 29 3b 0d 0d 7b 20 43 |: Boolea|n);..{ C|
|000004e0| 61 6c 6c 73 20 74 68 65 | 20 70 61 73 73 65 64 20 |alls the| passed |
|000004f0| 44 6f 54 6f 52 65 63 74 | 20 70 72 6f 63 65 64 75 |DoToRect| procedu|
|00000500| 72 65 20 66 6f 72 20 65 | 61 63 68 20 69 74 65 6d |re for e|ach item|
|00000510| 20 6f 6e 20 74 68 65 20 | 73 74 61 63 6b 2e 20 49 | on the |stack. I|
|00000520| 74 20 74 72 61 76 65 72 | 73 65 73 20 74 68 65 20 |t traver|ses the |
|00000530| 73 74 61 63 6b 20 69 6e | 0d 20 20 d4 64 69 72 65 |stack in|. .dire|
|00000540| 63 74 69 6f 6e d5 20 6f | 72 64 65 72 2e 20 49 66 |ction. o|rder. If|
|00000550| 20 d4 64 69 72 65 63 74 | 69 6f 6e d5 20 69 73 20 | .direct|ion. is |
|00000560| 6b 46 6f 72 77 61 72 64 | 2c 20 74 68 65 6e 20 77 |kForward|, then w|
|00000570| 65 20 73 74 61 72 74 20 | 77 69 74 68 20 74 68 65 |e start |with the|
|00000580| 20 66 69 72 73 74 20 65 | 6c 65 6d 65 6e 74 20 70 | first e|lement p|
|00000590| 75 73 68 65 64 0d 20 20 | 6f 6e 74 6f 20 74 68 65 |ushed. |onto the|
|000005a0| 20 73 74 61 63 6b 2c 20 | 61 6e 64 20 70 72 6f 63 | stack, |and proc|
|000005b0| 65 65 64 20 74 6f 20 74 | 68 65 20 6c 61 73 74 20 |eed to t|he last |
|000005c0| 28 6d 6f 73 74 20 72 65 | 63 65 6e 74 29 20 65 6c |(most re|cent) el|
|000005d0| 65 6d 65 6e 74 20 6f 6e | 20 74 68 65 20 73 74 61 |ement on| the sta|
|000005e0| 63 6b 2e 20 7d 0d 0d 09 | 56 41 52 0d 09 09 64 75 |ck. }...|VAR...du|
|000005f0| 6d 6d 79 3a 09 09 09 09 | 41 72 72 61 79 49 6e 64 |mmy:....|ArrayInd|
|00000600| 65 78 3b 0d 0d 09 46 55 | 4e 43 54 49 4f 4e 20 44 |ex;...FU|NCTION D|
|00000610| 6f 54 6f 49 74 65 6d 28 | 65 6c 65 6d 65 6e 74 49 |oToItem(|elementI|
|00000620| 6e 64 65 78 3a 20 41 72 | 72 61 79 49 6e 64 65 78 |ndex: Ar|rayIndex|
|00000630| 29 3a 20 42 6f 6f 6c 65 | 61 6e 3b 0d 0d 09 09 56 |): Boole|an;....V|
|00000640| 41 52 0d 09 09 09 74 68 | 65 52 65 63 74 3a 09 09 |AR....th|eRect:..|
|00000650| 09 52 65 63 74 3b 0d 0d | 09 09 42 45 47 49 4e 0d |.Rect;..|..BEGIN.|
|00000660| 0d 09 09 7b 20 47 65 74 | 20 74 68 65 20 72 65 63 |...{ Get| the rec|
|00000670| 74 61 6e 67 6c 65 20 74 | 68 61 74 20 69 73 20 61 |tangle t|hat is a|
|00000680| 73 73 6f 63 69 61 74 65 | 64 20 77 69 74 68 20 74 |ssociate|d with t|
|00000690| 68 69 73 20 69 6e 64 65 | 78 20 6e 75 6d 62 65 72 |his inde|x number|
|000006a0| 2c 20 61 6e 64 20 70 61 | 73 73 20 69 74 20 6f 66 |, and pa|ss it of|
|000006b0| 66 0d 09 09 20 20 74 6f | 20 74 68 65 20 70 72 6f |f... to| the pro|
|000006c0| 63 65 64 75 72 65 20 74 | 68 61 74 20 77 61 73 20 |cedure t|hat was |
|000006d0| 70 61 73 73 65 64 20 69 | 6e 20 74 6f 20 75 73 3a |passed i|n to us:|
|000006e0| 20 44 6f 54 6f 72 65 63 | 74 2e 20 7d 0d 0d 09 09 | DoTorec|t. }....|
|000006f0| 09 53 45 4c 46 2e 47 65 | 74 45 6c 65 6d 65 6e 74 |.SELF.Ge|tElement|
|00000700| 73 41 74 28 65 6c 65 6d | 65 6e 74 49 6e 64 65 78 |sAt(elem|entIndex|
|00000710| 2c 20 40 74 68 65 52 65 | 63 74 2c 20 31 29 3b 0d |, @theRe|ct, 1);.|
|00000720| 09 09 09 44 6f 54 6f 52 | 65 63 74 28 74 68 65 52 |...DoToR|ect(theR|
|00000730| 65 63 74 29 3b 0d 0d 09 | 09 7b 20 54 68 65 20 63 |ect);...|.{ The c|
|00000740| 6f 72 65 20 69 74 65 72 | 61 74 69 6e 67 20 72 6f |ore iter|ating ro|
|00000750| 75 74 69 6e 65 20 6f 66 | 20 54 44 79 6e 61 6d 69 |utine of| TDynami|
|00000760| 63 41 72 72 61 79 20 2d | 20 45 61 63 68 45 6c 65 |cArray -| EachEle|
|00000770| 6d 65 6e 74 44 6f 54 69 | 6c 20 2d 20 69 73 20 64 |mentDoTi|l - is d|
|00000780| 65 73 69 67 6e 65 64 0d | 09 09 20 20 74 6f 20 69 |esigned.|.. to i|
|00000790| 74 65 72 61 74 65 20 75 | 6e 74 69 6c 20 61 20 63 |terate u|ntil a c|
|000007a0| 65 72 74 61 69 6e 20 63 | 6f 6e 64 69 74 69 6f 6e |ertain c|ondition|
|000007b0| 20 69 73 20 74 72 75 65 | 2e 20 54 68 69 73 20 63 | is true|. This c|
|000007c0| 6f 6e 64 69 74 69 6f 6e | 20 69 73 20 64 65 66 69 |ondition| is defi|
|000007d0| 6e 65 64 20 62 79 0d 09 | 09 20 20 74 68 65 20 50 |ned by..|. the P|
|000007e0| 52 4f 43 45 44 55 52 45 | 20 70 61 72 61 6d 65 74 |ROCEDURE| paramet|
|000007f0| 65 72 20 74 68 61 74 20 | 69 73 20 70 61 73 73 65 |er that |is passe|
|00000800| 64 20 74 6f 20 69 74 2e | 20 45 61 63 68 45 6c 65 |d to it.| EachEle|
|00000810| 6d 65 6e 74 44 6f 54 69 | 6c 20 6a 75 73 74 20 6b |mentDoTi|l just k|
|00000820| 65 65 70 73 0d 09 09 20 | 20 69 74 65 72 61 74 69 |eeps... | iterati|
|00000830| 6e 67 20 75 6e 74 69 6c | 20 74 68 61 74 20 70 72 |ng until| that pr|
|00000840| 6f 63 65 64 75 72 65 20 | 72 65 74 75 72 6e 73 20 |ocedure |returns |
|00000850| 54 52 55 45 20 28 6f 72 | 20 75 6e 74 69 6c 20 77 |TRUE (or| until w|
|00000860| 65 20 72 75 6e 20 6f 75 | 74 20 6f 66 0d 09 09 20 |e run ou|t of... |
|00000870| 20 65 6c 65 6d 65 6e 74 | 73 29 2e 20 53 69 6e 63 | element|s). Sinc|
|00000880| 65 20 77 65 20 77 61 6e | 74 20 45 61 63 68 52 65 |e we wan|t EachRe|
|00000890| 63 74 20 74 6f 20 69 74 | 65 72 61 74 65 20 6f 76 |ct to it|erate ov|
|000008a0| 65 72 20 41 4c 4c 20 69 | 74 65 6d 73 20 6f 6e 20 |er ALL i|tems on |
|000008b0| 74 68 65 20 73 74 61 63 | 6b 2c 20 77 65 0d 09 09 |the stac|k, we...|
|000008c0| 20 20 61 6c 77 61 79 73 | 20 72 65 74 75 72 6e 20 | always| return |
|000008d0| 46 41 4c 53 45 2e 20 7d | 0d 0d 09 09 09 44 6f 54 |FALSE. }|.....DoT|
|000008e0| 6f 49 74 65 6d 20 3a 3d | 20 46 41 4c 53 45 3b 0d |oItem :=| FALSE;.|
|000008f0| 09 09 45 4e 44 3b 0d 0d | 09 42 45 47 49 4e 0d 0d |..END;..|.BEGIN..|
|00000900| 09 7b 20 57 65 20 69 74 | 65 72 61 74 65 20 6f 76 |.{ We it|erate ov|
|00000910| 65 72 20 74 68 65 20 73 | 74 61 63 6b 20 62 79 20 |er the s|tack by |
|00000920| 63 61 6c 6c 69 6e 67 20 | 74 68 65 20 67 65 6e 65 |calling |the gene|
|00000930| 72 69 63 20 45 61 63 68 | 45 6c 65 6d 65 6e 74 44 |ric Each|ElementD|
|00000940| 6f 54 69 6c 20 6d 65 74 | 68 6f 64 20 6f 66 0d 09 |oTil met|hod of..|
|00000950| 20 20 54 44 79 6e 61 6d | 69 63 41 72 72 61 79 2e | TDynam|icArray.|
|00000960| 20 46 6f 72 20 65 61 63 | 68 20 65 6c 65 6d 65 6e | For eac|h elemen|
|00000970| 74 20 69 6e 20 74 68 65 | 20 73 74 61 63 6b 2c 20 |t in the| stack, |
|00000980| 6f 75 72 20 44 6f 54 6f | 49 74 65 6d 20 70 72 6f |our DoTo|Item pro|
|00000990| 63 65 64 75 72 65 20 77 | 69 6c 6c 20 62 65 0d 09 |cedure w|ill be..|
|000009a0| 20 20 63 61 6c 6c 65 64 | 20 77 69 74 68 20 74 68 | called| with th|
|000009b0| 65 20 69 6e 64 65 78 20 | 6f 66 20 74 68 65 20 69 |e index |of the i|
|000009c0| 74 65 6d 20 74 68 61 74 | 20 6e 65 65 64 73 20 74 |tem that| needs t|
|000009d0| 6f 20 62 65 20 70 72 6f | 63 65 73 73 65 64 2e 20 |o be pro|cessed. |
|000009e0| 4f 75 72 20 44 6f 54 6f | 49 74 65 6d 0d 09 20 20 |Our DoTo|Item.. |
|000009f0| 70 72 6f 63 65 64 75 72 | 65 20 75 73 65 73 20 74 |procedur|e uses t|
|00000a00| 68 69 73 20 69 6e 64 65 | 78 20 74 6f 20 67 65 74 |his inde|x to get|
|00000a10| 20 74 68 65 20 63 6f 72 | 72 65 73 70 6f 6e 64 69 | the cor|respondi|
|00000a20| 6e 67 20 52 65 63 74 2c | 20 77 68 69 63 68 20 69 |ng Rect,| which i|
|00000a30| 74 20 69 6e 20 74 75 72 | 6e 73 0d 09 20 20 70 61 |t in tur|ns.. pa|
|00000a40| 73 73 65 73 20 74 6f 20 | 74 68 65 20 44 6f 54 6f |sses to |the DoTo|
|00000a50| 52 65 63 74 20 70 72 6f | 63 65 64 75 72 65 20 74 |Rect pro|cedure t|
|00000a60| 68 61 74 20 77 61 73 20 | 70 61 73 73 65 64 20 74 |hat was |passed t|
|00000a70| 6f 20 75 73 2e 20 7d 0d | 0d 09 09 64 75 6d 6d 79 |o us. }.|...dummy|
|00000a80| 20 3a 3d 20 53 45 4c 46 | 2e 45 61 63 68 45 6c 65 | := SELF|.EachEle|
|00000a90| 6d 65 6e 74 44 6f 54 69 | 6c 28 44 6f 54 6f 49 74 |mentDoTi|l(DoToIt|
|00000aa0| 65 6d 2c 20 64 69 72 65 | 63 74 69 6f 6e 29 3b 0d |em, dire|ction);.|
|00000ab0| 09 45 4e 44 3b 0d 0d 7b | 2d 2d 2d 2d 2d 2d 2d 2d |.END;..{|--------|
|00000ac0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ad0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ae0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000af0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000b00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000b10| 2d 2d 2d 7d 0d 7b 24 53 | 20 41 52 65 73 7d 0d 0d |---}.{$S| ARes}..|
|00000b20| 50 52 4f 43 45 44 55 52 | 45 20 54 52 65 63 74 53 |PROCEDUR|E TRectS|
|00000b30| 74 61 63 6b 2e 50 75 73 | 68 52 65 63 74 28 74 68 |tack.Pus|hRect(th|
|00000b40| 65 52 65 63 74 3a 20 52 | 65 63 74 29 3b 0d 0d 7b |eRect: R|ect);..{|
|00000b50| 20 54 61 6b 65 73 20 74 | 68 65 20 52 65 63 74 20 | Takes t|he Rect |
|00000b60| 79 6f 75 20 70 61 73 73 | 20 69 74 2c 20 61 6e 64 |you pass| it, and|
|00000b70| 20 70 75 73 68 65 73 20 | 69 74 20 6f 6e 20 74 68 | pushes |it on th|
|00000b80| 65 20 73 74 61 63 6b 2e | 20 49 74 20 64 6f 65 73 |e stack.| It does|
|00000b90| 20 74 68 69 73 20 62 79 | 20 69 6e 73 65 72 74 69 | this by| inserti|
|00000ba0| 6e 67 20 74 68 65 20 69 | 74 65 6d 0d 20 20 61 66 |ng the i|tem. af|
|00000bb0| 74 65 72 20 74 68 65 20 | 6c 61 73 74 20 69 74 65 |ter the |last ite|
|00000bc0| 6d 20 69 6e 20 74 68 65 | 20 61 72 72 61 79 2e 20 |m in the| array. |
|00000bd0| 57 65 20 6b 6e 6f 77 20 | 68 6f 77 20 6c 61 72 67 |We know |how larg|
|00000be0| 65 20 74 68 65 20 61 72 | 72 61 79 20 69 73 20 77 |e the ar|ray is w|
|00000bf0| 69 74 68 20 74 68 65 0d | 20 20 54 44 79 6e 61 6d |ith the.| TDynam|
|00000c00| 69 63 41 72 72 61 79 2e | 47 65 74 53 69 7a 65 20 |icArray.|GetSize |
|00000c10| 6d 65 74 68 6f 64 2e 20 | 7d 0d 0d 09 42 45 47 49 |method. |}...BEGI|
|00000c20| 4e 0d 09 09 53 45 4c 46 | 2e 49 6e 73 65 72 74 45 |N...SELF|.InsertE|
|00000c30| 6c 65 6d 65 6e 74 73 42 | 65 66 6f 72 65 28 47 65 |lementsB|efore(Ge|
|00000c40| 74 53 69 7a 65 20 2b 20 | 31 2c 20 40 74 68 65 52 |tSize + |1, @theR|
|00000c50| 65 63 74 2c 20 31 29 3b | 0d 09 45 4e 44 3b 0d 0d |ect, 1);|..END;..|
|00000c60| 7b 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |{-------|--------|
|00000c70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ca0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000cb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 7d 0d 7b 24 |--------|----}.{$|
|00000cc0| 53 20 41 52 65 73 7d 0d | 0d 50 52 4f 43 45 44 55 |S ARes}.|.PROCEDU|
|00000cd0| 52 45 20 54 52 65 63 74 | 53 74 61 63 6b 2e 50 6f |RE TRect|Stack.Po|
|00000ce0| 70 52 65 63 74 28 56 41 | 52 20 74 68 65 52 65 63 |pRect(VA|R theRec|
|00000cf0| 74 3a 20 52 65 63 74 29 | 3b 0d 0d 7b 20 52 65 74 |t: Rect)|;..{ Ret|
|00000d00| 75 72 6e 73 20 74 68 65 | 20 66 69 72 73 74 20 52 |urns the| first R|
|00000d10| 65 63 74 20 6f 6e 20 74 | 68 65 20 73 74 61 63 6b |ect on t|he stack|
|00000d20| 2e 20 54 68 61 74 20 52 | 65 63 74 20 69 73 20 74 |. That R|ect is t|
|00000d30| 68 65 6e 20 72 65 6d 6f | 76 65 64 20 66 72 6f 6d |hen remo|ved from|
|00000d40| 20 74 68 65 20 73 74 61 | 63 6b 2e 20 7d 0d 0d 09 | the sta|ck. }...|
|00000d50| 42 45 47 49 4e 0d 09 09 | 53 45 4c 46 2e 47 65 74 |BEGIN...|SELF.Get|
|00000d60| 45 6c 65 6d 65 6e 74 73 | 41 74 28 47 65 74 53 69 |Elements|At(GetSi|
|00000d70| 7a 65 2c 20 40 74 68 65 | 52 65 63 74 2c 20 31 29 |ze, @the|Rect, 1)|
|00000d80| 3b 0d 09 09 53 45 4c 46 | 2e 44 65 6c 65 74 65 45 |;...SELF|.DeleteE|
|00000d90| 6c 65 6d 65 6e 74 73 41 | 74 28 47 65 74 53 69 7a |lementsA|t(GetSiz|
|00000da0| 65 2c 20 31 29 3b 0d 09 | 45 4e 44 3b 0d 0d 7b 2d |e, 1);..|END;..{-|
|00000db0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000dc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000dd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000de0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000df0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 7d 0d 7b 24 53 20 |--------|--}.{$S |
|00000e10| 41 46 69 65 6c 64 73 7d | 0d 0d 50 52 4f 43 45 44 |AFields}|..PROCED|
|00000e20| 55 52 45 20 54 52 65 63 | 74 53 74 61 63 6b 2e 46 |URE TRec|tStack.F|
|00000e30| 69 65 6c 64 73 28 50 52 | 4f 43 45 44 55 52 45 20 |ields(PR|OCEDURE |
|00000e40| 44 6f 54 6f 46 69 65 6c | 64 28 66 69 65 6c 64 4e |DoToFiel|d(fieldN|
|00000e50| 61 6d 65 3a 20 53 74 72 | 32 35 35 3b 20 66 69 65 |ame: Str|255; fie|
|00000e60| 6c 64 41 64 64 72 3a 20 | 50 74 72 3b 0d 09 09 09 |ldAddr: |Ptr;....|
|00000e70| 09 09 09 09 09 09 09 09 | 09 66 69 65 6c 64 54 79 |........|.fieldTy|
|00000e80| 70 65 3a 20 49 6e 74 65 | 67 65 72 29 29 3b 20 4f |pe: Inte|ger)); O|
|00000e90| 56 45 52 52 49 44 45 3b | 0d 0d 09 42 45 47 49 4e |VERRIDE;|...BEGIN|
|00000ea0| 0d 09 09 44 6f 54 6f 46 | 69 65 6c 64 28 27 54 52 |...DoToF|ield('TR|
|00000eb0| 65 63 74 53 74 61 63 6b | 27 2c 20 4e 49 4c 2c 20 |ectStack|', NIL, |
|00000ec0| 62 43 6c 61 73 73 29 3b | 0d 0d 09 09 49 4e 48 45 |bClass);|....INHE|
|00000ed0| 52 49 54 45 44 20 46 69 | 65 6c 64 73 28 44 6f 54 |RITED Fi|elds(DoT|
|00000ee0| 6f 46 69 65 6c 64 29 3b | 0d 09 45 4e 44 3b 0d 00 |oField);|..END;..|
|00000ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000f00| 00 00 01 00 00 00 02 30 | 00 00 01 30 00 00 00 4a |.......0|...0...J|
|00000f10| 81 00 81 00 a1 00 00 0a | 81 00 81 00 81 00 81 00 |........|........|
|00000f20| a1 00 00 0a 81 00 81 00 | 81 00 81 00 a1 00 00 0a |........|........|
|00000f30| 11 55 52 65 63 74 53 74 | 61 63 6b 2e 69 6e 63 31 |.URectSt|ack.inc1|
|00000f40| 2e 70 02 00 00 00 54 45 | 58 54 4d 50 53 20 01 00 |.p....TE|XTMPS ..|
|00000f50| 00 00 54 45 58 54 4d 50 | 53 20 01 00 00 28 01 20 |..TEXTMP|S ...(. |
|00000f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000f70| 00 00 a2 64 55 e1 00 00 | 00 00 00 00 02 7a 81 00 |...dU...|.....z..|
|00000f80| a1 00 00 0a 81 00 81 00 | 81 00 81 00 a1 00 00 0a |........|........|
|00000f90| 81 00 81 00 81 00 81 00 | a1 00 00 0a 81 00 81 00 |........|........|
|00000fa0| 81 00 81 00 a1 00 00 0a | 81 00 81 00 81 00 81 00 |........|........|
|00000fb0| a1 00 00 0a 81 00 81 00 | 81 00 81 00 a1 00 00 0a |........|........|
|00000fc0| 81 00 81 00 81 00 81 00 | a1 00 00 0a 81 00 81 00 |........|........|
|00000fd0| 81 00 81 00 a1 00 00 0a | 81 00 81 00 81 00 81 00 |........|........|
|00000fe0| a1 00 00 0a 81 00 81 00 | 81 00 81 00 a1 00 00 0a |........|........|
|00000ff0| 81 00 81 00 81 00 81 00 | a1 00 00 0a 81 00 81 00 |........|........|
|00001000| 00 00 00 1e 00 2a 00 05 | 01 d3 02 73 00 2a 00 05 |.....*..|...s.*..|
|00001010| 01 d3 02 73 00 00 00 00 | 00 00 00 00 00 00 00 00 |...s....|........|
|00001020| 00 00 00 00 00 48 00 09 | 4d 6f 6e 61 63 6f 00 ff |.....H..|Monaco..|
|00001030| 00 00 00 00 00 14 00 01 | 95 fc 00 0a 00 03 00 00 |........|........|
|00001040| 00 0e 02 55 00 00 00 00 | 00 06 00 04 00 2a 00 05 |...U....|.....*..|
|00001050| 01 d3 02 5d 00 2a 00 05 | 01 d3 02 5d a2 3b 9d c0 |...].*..|...].;..|
|00001060| 00 00 00 00 00 00 00 00 | 00 00 00 00 01 00 00 00 |........|........|
|00001070| 00 be 00 07 00 00 01 4f | 00 00 01 64 15 54 52 65 |.......O|...d.TRe|
|00001080| 63 74 53 74 61 63 6b 2e | 49 52 65 63 74 53 74 61 |ctStack.|IRectSta|
|00001090| 63 6b 00 00 03 27 00 00 | 03 3c 15 54 52 65 63 74 |ck...'..|.<.TRect|
|000010a0| 53 74 61 63 6b 2e 43 6c | 65 61 72 53 74 61 63 6b |Stack.Cl|earStack|
|000010b0| 00 00 04 10 00 00 04 23 | 13 54 52 65 63 74 53 74 |.......#|.TRectSt|
|000010c0| 61 63 6b 2e 45 61 63 68 | 52 65 63 74 00 00 05 8f |ack.Each|Rect....|
|000010d0| 00 00 05 97 09 44 6f 54 | 6f 49 74 65 6d 00 00 00 |.....DoT|oItem...|
|000010e0| 0a aa 00 00 0a bd 13 54 | 52 65 63 74 53 74 61 63 |.......T|RectStac|
|000010f0| 6b 2e 50 75 73 68 52 65 | 63 74 00 00 0c 53 00 00 |k.PushRe|ct...S..|
|00001100| 0c 65 13 54 52 65 63 74 | 53 74 61 63 6b 2e 50 6f |.e.TRect|Stack.Po|
|00001110| 70 52 65 63 74 00 00 00 | 0d a4 00 00 0d b5 11 54 |pRect...|.......T|
|00001120| 52 65 63 74 53 74 61 63 | 6b 2e 46 69 65 6c 64 73 |RectStac|k.Fields|
|00001130| 00 00 01 00 00 00 02 30 | 00 00 01 30 00 00 00 4a |.......0|...0...J|
|00001140| 00 34 5b 34 08 d2 00 00 | 00 1c 00 4a 00 00 4d 50 |.4[4....|...J..MP|
|00001150| 53 52 00 02 00 0a 03 f0 | ff ff 00 00 00 00 00 00 |SR......|........|
|00001160| 00 00 03 ed ff ff 00 00 | 00 22 00 00 00 00 03 ef |........|."......|
|00001170| ff ff 00 00 00 6e 00 35 | ff a0 00 00 00 00 00 00 |.....n.5|........|
+--------+-------------------------+-------------------------+--------+--------+